草庐IT

XPath 教程

全部标签

xml - 我可以在 XSLT 中动态构建此 XPath 查询吗?

我有一个看起来像这样的文档在/element[2]/[someNode]上下文中的XSLT工作表中我想得到一个代表/element[1]/[someNode]距离的数字(即/element1/[someNode]的前面sibling的数量)。例如,在/element[2]/subelement1的上下文中我想有办法得到数字2,与/element[1]的距离至/element[1]/subelement2.我只需要给定节点名称与的第一个实例的距离.直觉上我认为我可以这样构造但不幸的是,这张表无法编译。我试图在XSLT中实现什么? 最佳答案

xml - XPath 随机选择一个子节点

我正在使用SeleniumIDE进行一些网络应用程序测试,并且想引入一些随机性来分散我们的测试。我目前正在使用Selenium的storeAttributeValue,您可以在其中给它一个XPath表达式,它会存储与其匹配的第一个元素(sorta)。但是我不想存储第一个匹配项,我希望它随机选择一个子节点。例如//table[@id='mytable']//tr选择此表的所有tr子项。//table[@id='mytable']//tr[0]选择第一个tr(假设现在是嵌套表)//table[@id='mytable']//tr[3]选择第三个tr等有什么方法(完全在xpath中)我可以说

xml - 在 Perl 中使用 XML::XPath 模块获取节点值

我正在使用下面的代码从XML文件中获取节点的值:useXML::XPath;useXML::XPath::XMLParser;my$pt1=XML::XPath->new(filename=>'test1.xml');my$nodeset=$pt1->find('/file1/table/tname');foreachmy$node($nodeset->get_nodelist){print$node->getNodeValue."\n";}'test1.xml'的内容如下:_sys_identregular_sys_ident_aspvarchar(16)_sys_aspPRIMAR

c# - 异常 : The XPath expression evaluated to unexpected type System. Xml.Linq.XAttribute

我有一个如下所示的XML文件:Prasad19986730630City1IndiaCity2India现在我想获取所有地址类型。我像下面这样使用XPath进行了尝试,但出现了异常。varxPathString=@"//Employee/Address/@Type";doc.XPathSelectElements(xPathString);//docisXDocument.Load("xmlfilePath")Exception:TheXPathexpressionevaluatedtounexpectedtypeSystem.Xml.Linq.XAttribute.我的XPath有问

xml - XPath 按属性选择具有特定父节点的所有子节点

我想选择所有子项,即其父级div和id为testRoot的图像。结构未知。为了便于理解,我在这里对其进行了简化。如果是XPath表达式,那就太好了。这是我尝试过的但是...doc.DocumentNode.SelectNodes("//div[@id='hero']/div/div") 最佳答案 对于div元素,其id属性为hero//div[@id='hero'],这些XPath表达式将按如下方式选择元素://div[@id='hero']/*将选择它的所有children元素。//div[@id='hero']/img将选择它的

xml - VBScript 中的 XPath 计数

我正在尝试使用XPath计数函数获取XML文件中特定节点的数量,但是,这一直返回错误“'msxml3.dll类型的异常:表达式不返回DOM节点。”如何使用VBScript和MSXMLDOM从XPath计数中获取返回值DimoXMLDimhomeIdDimawayIdDimhomeGoalsDimawayGoalsSetoXML=Server.CreateObject("Microsoft.XMLDOM")oXML.async=falseoXML.SetProperty"SelectionLanguage","XPath"oXML.SetProperty"ServerHTTPReques

jQuery - xpath 找到?

如果你在$(xml)中有下面的xml,你会变得懒惰:$(xml).find("animal").find("dog").find("beagle").text()在jQuery中是否有类似的方式来使用xpath$(xml).xpathfind("/animal/dog/beagle").text()?droopy... 最佳答案 jQuery实际上支持基本的XPath,因此您只需使用find即可。或者,使用CSS选择器语法。对于您的特定示例,您将使用$(xml).find("animal>dog>beagle").text()

xml - 如何在我的 xslt 中使用 xpath 从 xml 键/值对中获取值?

我有一些要使用xslt处理的xml。大量数据以键值对的形式出现(见下文)。我正在努力研究如何将基于键的值提取到变量中。我希望能够做这样的事情:但这似乎行不通。这是示例xml。foobar正确的xpath是什么? 最佳答案 以下转换显示了实现此目的的两种方法——使用和不使用和key()功能:1.Bykey:2.Notusingkey:请注意normalize-space()的使用函数从的值中去除任何前导或尾随空白字符. 关于xml-如何在我的xslt中使用xpath从xml键/值对中获取值

.net - 如何防止 .NET 中的 XPath/XML 注入(inject)

如何防止.NETFramework中的XPATH注入(inject)?我们以前使用字符串连接来构建XPATH语句,但发现最终用户可以执行一些任意的XPATH。例如:stringqueryValue="pages[@url='"+USER_INPUT_VALUE+"']";node=doc.DocumentElement.SelectSingleNode(queryValue);从输入字符串中去除单引号和双引号就足够了吗?或者,.NET框架是否支持参数化XPATH查询? 最佳答案 防止XPath注入(inject)的主要思想是预编译您

c# - 如何在 C# 中使用 XPath 检索最后一个节点?

我有以下部分的xml文件。notepadNotepadUntitled-Notepad1;0;1;1;0;00.00500;0.09500;0.035001;0;1;10;00notepadNotepadUntitled-Notepad1;1;1;1;0;10.00500;0.09500;0.035001;1;0;01;10..........我需要获取PNN=@P1的最后一个节点。示例查询将不胜感激。提前致谢。 最佳答案 XPath操作:"/UN/DT[PN/@N='@p1'][last()]"将返回PN=@p1的最后一个DT节点